The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
Client applications that are executed by client devices such as desktop computers, tablets, mobile devices such as smartphones, etc. may interact with a remote activity feed server over a distributed communications system. The client applications typically communicate with the remote activity feed server by generating hypertext transfer protocol (HTTP) requests. The remote activity feed server receives the HTTP requests and generates HTTP responses including information relating to the HTTP requests.
The remote activity feed server tracks occurrences of various types of events for client devices in an event database. The client applications periodically request information from the activity feed server relating to the events and the number of occurrences in a given time interval. The activity feed server receives the HTTP request, converts the local time interval for the client device into coordinated universal time (UTC) time (using a time zone format sent by the client device), reads an event database to identify the occurrence of events having the event type corresponding to the request and the UTC time interval, and generates a response including a count of the events and other related information.
Since the activity feed server usually services a large number of client devices, the process for generating event aggregations should be as efficient as possible to reduce implementation cost and latency. Furthermore, the network traffic generated by the requests from the client devices and the responses from the activity feed servers should be made in an efficient manner as possible to reduce network bandwidth.